<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="css/common.css">
</head>
<body>
    <!-- 导航栏 -->
    <div class="nav">
        <!-- 左边 -->
        <div class="nav-left">
            <img src="img/logo2.jpg" alt="">
            <span>我的博客系统</span>
        </div>
        <!-- 右边 -->
        <div class="nav-right">
            <a href="blog_list.html">主页</a>
            <a href="blog_edit.html">写博客</a>
            <a href="logout">注销</a>
        </div>
    </div>
    <!-- 版心 -->
    <div class="container">
        <!-- 左边：用户信息 -->
        <div class="container-left">
            <div class="card">
                <!-- 头像 -->
                <img src="img/doge.jpg">
                <!-- 用户名称 -->
                <h3>比特郑老师</h3>
                <a href="www.github.com">github地址</a>
                <div class="counter">
                    <span>文章</span>
                    <span>分类</span>
                </div>
                <div class="counter">
                    <span>2</span>
                    <span>1</span>
                </div>
            </div>
        </div>
        <!-- 右边：博客详情 -->
        <div class="container-right">
            <!-- 一篇文章 -->
            <div class="detail">
                <div class="title">第一篇博客</div>
                <div class="date">2021-12-30</div>
                <div class="desc">
                    <p>约翰逊近日深陷“派对门”丑闻。据英国媒体此前爆料，在整个新冠疫情期间，英国首相府被曝每周五都要开派对，伦敦“封城”和菲利普亲王葬礼期间也概莫能外。作为首相，约翰逊不仅屡次三番参加，还鼓励员工参加聚会“释放压力”。</p>
                    <p>尽管约翰逊本人已经就此道歉，但“派对门”还在发酵，一时间民怨沸腾，首相位置可能朝不保夕。最近一项民调显示，保守党支持率已落后主要反对党工党10%，创历史新低，约翰逊个人支持率也跌至冰点。</p>
                    <p>上述对话就是在此背景下展开。不止是埃德·戴维，根据“今日俄罗斯”（RT）报道，约翰逊当天在议会还遭到前盟友大卫·戴维斯的严厉批评，戴维斯也要求约翰逊为自己的行为“承担责任”并辞职。</p>
                    <p>而在BBC将这段视频上传至推特后，对于约翰逊为何突然说中文，许多外国网民留言表示不解</p>
                </div>
            </div>
        </div>
    </div>
</body>
<script src="js/jquery.min.js"></script>
<script src="editor.md/lib/marked.min.js"></script>
<script src="editor.md/lib/prettify.min.js"></script>
<script src="editor.md/editormd.min.js"></script>
<script src="js/util.js"></script>
<script>
    //本页面入口是博客文章列表：blog_content.html?id=xxx
    //先获取这个id的数据，后边发请求也是根据这个id发到后端Servlet，来查询
    console.log(window.location.search)// 获取queryString（?开始）：?id=1
    // let queryString = window.location.search.substring(1);
    // //解析?后的queryString（键值对&间隔，键=值）
    // let keyvalueArray = queryString.split("&");
    // for(keyvalue of keyvalueArray){
    //     //再把每个键值对按=分割，然后取=后的数据
    // }
    //我们这里简单做：只获取=后的数据
    let id = window.location.search.substring(4);
    console.log(id);
    //页面初始化就需要展示文章内容，直接发ajax请求来获取文章数据
    ajax({
        method: "get",
        url: "api/article/select/"+id,
        callback: function(status, responseText){
            // 先判断一下状态码
            if(status == 200){//http响应成功
                //解析响应数据：{"ok": true, data: {"nickname": "", "articles": []}}
                let json = JSON.parse(responseText);
                if(json.success){//操作成功
                    let data = json.data;
                    let nickname = data.nickname;
                    //设置用户昵称
                    let h3 = document.querySelector(".card>h3");
                    h3.innerHTML = nickname;
                    let a = data.article;
                    console.log(a);
                    //解析文章列表的数据，动态的生成html内容，并设置到container-right的标签内容
                    let div = document.querySelector(".container-right");
                    //小心，如果str不赋值就是=undefined，再去拼接字符串，就是unfined....
                    let str = "";
                    str +=  `<div class="detail">`;
                    str +=      `<div class="title">`;
                    str +=          a.title;
                    str +=      `</div>`;
                    str +=      `<div class="date">`;
                    str +=          a.createTime;
                    str +=      `</div>`;
                    str +=      `<div id="article-content" class="desc">`;
                    // str +=          a.content;
                    str +=      `</div>`;
                    str +=  `</div>`;
                    div.innerHTML = str;
                    //不能直接展示markdown源码（数据库中保存的是markdown源码）
                    editormd.markdownToHTML("article-content", {markdown: a.content});
                }else{
                    alert('错误码['+json.code + '],错误信息：'+ json.message
                }
            }else{
                alert("响应状态码："+status+"\nbody: "+responseText)
            }
        }
    });
</script>
</html>